/* 登录页思路分析
1.切换登录与注册盒子
2.登录功能
3.注册功能
*/
/*切换功能
  1.给注册盒子里面的a注册事件
  2.给注册的盒子隐藏 将登陆的盒子显示
  3.给登录盒子里面的a注册事件
  2.将登陆的盒子隐藏 将注册的盒子显示*/
document.querySelector(".goLogin").addEventListener("click", function () {
  document.querySelector(".register").style.display = "none";
  document.querySelector(".login").style.display = "block";
});
document.querySelector(".goRegister").addEventListener("click", function () {
  document.querySelector(".register").style.display = "block";
  document.querySelector(".login").style.display = "none";
});
/*注册功能
  1.需要找到注册盒子里面的form标签 注册submit事件
  2.阻止表单默认行为
  3.非空判断
  4.正则判断
  5.发送ajax
  6.切换成功切换登录盒子*/

  // 1.需要找到注册盒子里面的form标签 注册submit事件
document.querySelector('.register form').addEventListener('submit', function (e) {
  // 2.阻止表单默认行为
  e.preventDefault();
  // 3.非空判断
  const username = this.querySelector('[name="username"]').value.trim();
  const password = this.querySelector('[name="password"]').value.trim();
  if (username.length === 0 || password.length === 0) return Toast.info('输入框数据不能为空')
  // 4.正则判断
  const userReg = /^\w{2,15}$/
  const pwdReg = /^\w{6,15}$/
  if (!userReg.test(username)) return Toast.info('用户名不符合规则')
  if (!pwdReg.test(password)) return Toast.info('密码不符合规则')
  // 5.发送ajax
  axios({
    url:'/api/register',
    method:'post',
    data: {
      username,
      password
    }
  }).then(({ data:res }) => {
    if (res.code !==0)return Toast.fail(res.message)
    Toast.success(res.message)
    // 6.切换成功切换登录盒子
    this.querySelector('a').click()
  })
});

/*登录功能
  1.需要找到登录盒子里面的form标签注册submit事件
  2.阻止表单默认行为
  3.非空判断
  4.正则判断
  5.发送ajax
  6.登录成功跳转到后台*/
  document.querySelector('.login form').addEventListener('submit', function (e) {
    // 2.阻止表单默认行为
    e.preventDefault();
    // 3.非空判断
    const username = this.querySelector('[name="username"]').value.trim();
    const password = this.querySelector('[name="password"]').value.trim();
    if (username.length === 0 || password.length === 0) return Toast.info('输入框数据不能为空')
    // 4.正则判断
    const userReg = /^\w{2,15}$/
    const pwdReg = /^\w{6,15}$/
    if (!userReg.test(username)) return Toast.info('用户名不符合规则')
    if (!pwdReg.test(password)) return Toast.info('密码不符合规则')
    // 5.发送ajax
    axios({
      url:'/api/login',
      method:'post',
      data: {
        username,
        password
      }
    }).then(({ data:res }) => {
      if (res.code !==0)return Toast.fail(res.message)
      Toast.success(res.message)
      location.href = './index.html'
      // 将服务器响应回来的token字符串保存到本地储存
      localStorage.setItem('CMSTOKEN',res.token)
    })
  })
